package hust.rpc.pojo;

import hust.rpc.enums.RpcResponseType;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class RpcResponse {

    // 结果信息,未记录参数类型的序列化方式,如json、protobuf需要自行通过方法返回值类型反推
    // 如果异常,则为Exception
    private Object result;
    // 唯一编号,用于处理方法调用和返回,可采用雪花算法
    private Long id;
    // 响应类型信息
    private RpcResponseType responseType;
}
